#!/bin/bash

echo "TEST INSTRUKCJI AND"
select test1 in "Test 1" "Test 2" "Test 3" "Return" "Quit"
do
  case $test1 in
  "Test 1") 
    
    ../syko.exe programIn.bin dataIn.bin dataOut.bin

    echo -e "Wybrałeś Test 1 -  operacja AND na rejestrach o wartości 0\n" 
    echo -e "Wartości rejestrów - plik tekstowy\n"
    cat "MEMD1.txt"

    echo -e 'Dane wejściowe\n'
    hexdump -C dataIn.bin

    echo -e 'Kod programu - plik tekstowy\n'
    cat "assembler.txt"

    echo -e 'Kod programu - plik binarny\n'
    hexdump -C programIn.bin

    echo -e 'Dane wyjściowe - plik binarny\n'
    hexdump -C dataOut.bin

    echo -e 'Jak widać zapala się flaga Z - równoważna wartości 2 rejestru flagowego - adres 0x3F'
  ;;
  "Test 2") 	echo -e "Wybrałeś Test 2 - operacja AND na rejestrach o wartości 255 i 0 " 
    
    ../syko.exe programIn.bin dataIn.bin dataOut.bin

    echo -e "Wartości rejestrów - plik tekstowy\n"
    cat "MEMD2.txt"

    echo -e 'Dane wejściowe\n'
    hexdump -C dataIn.bin

    echo -e 'Kod programu - plik tekstowy\n'
    cat "assembler.txt"

    echo -e 'Kod programu - plik binarny\n'
    hexdump -C programIn.bin

    echo -e 'Dane wyjściowe - plik binarny\n'
    hexdump -C dataOut.bin

    echo -e 'Jak widać zapala się flaga Z - równoważna wartości 2 rejestru flagowego - adres 0x3F'


;;
  "Test 3")	echo -e "Wybrałeś Test 3" 
    
    ../syko.exe programIn.bin dataIn.bin dataOut.bin

    echo -e "Wybrałeś Test 3 - operacja AND na rejestrach o wartości 255 i 255\n" 
    echo -e "Wartości rejestrów - plik tekstowy\n"
    cat "MEMD3.txt"

    echo -e 'Dane wejściowe\n'
    hexdump -C dataIn.bin

    echo -e 'Kod programu - plik tekstowy\n'
    cat "assembler.txt"

    echo -e 'Kod programu - plik binarny\n'
    hexdump -C programIn.bin

    echo -e 'Dane wyjściowe - plik binarny\n'
    hexdump -C dataOut.bin

    echo -e 'Jak widać zapala się flaga N i S - równoważna wartości 14 rejestru flagowego - adres 0x3F'


;;
   "Return") ./testAnd.sh ;;
   "Quit") exit ;;
	*) echo -e "Nic nie wybrałeś" ;;
      esac
    #break
 done